Web Bluetooth API
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die Web Bluetooth API ermöglicht die Verbindung und Interaktion mit Bluetooth Low Energy-Peripheriegeräten.
Hinweis:
Diese API ist nicht verfügbar in Web Workers (nicht über WorkerNavigator
zugänglich).
Schnittstellen
Bluetooth
-
Bietet Methoden zum Abfragen der Bluetooth-Verfügbarkeit und zum Anfordern des Zugriffs auf Geräte.
BluetoothCharacteristicProperties
-
Stellt Eigenschaften einer bestimmten
BluetoothRemoteGATTCharacteristic
bereit. BluetoothDevice
-
Repräsentiert ein Bluetooth-Gerät innerhalb einer bestimmten Skript-Ausführungsumgebung.
BluetoothRemoteGATTCharacteristic
-
Repräsentiert eine GATT-Charakteristik, ein grundlegendes Datenelement, das weitere Informationen über einen Dienst eines Peripheriegeräts liefert.
BluetoothRemoteGATTDescriptor
-
Repräsentiert einen GATT-Deskriptor, der weitere Informationen über den Wert einer Charakteristik liefert.
BluetoothRemoteGATTServer
-
Repräsentiert einen GATT-Server auf einem entfernten Gerät.
BluetoothRemoteGATTService
-
Repräsentiert einen Dienst, der von einem GATT-Server bereitgestellt wird, einschließlich eines Geräts, einer Liste referenzierter Dienste und einer Liste der Charakteristika dieses Dienstes.
Erweiterungen zu anderen Schnittstellen
Die Bluetooth API erweitert die folgenden APIs und fügt die aufgeführten Funktionen hinzu.
Navigator
-
Gibt ein
Bluetooth
-Objekt für das aktuelle Dokument zurück und bietet Zugriff auf die Funktionalität der Web Bluetooth API.
Sicherheitsüberlegungen
Die Web Bluetooth API kann nur in einem sicheren Kontext verwendet werden.
Der Zugriff auf die API wird durch die Permissions Policy-Direktive bluetooth
kontrolliert.
Die Standard-Zugriffsliste für die bluetooth
-Richtlinie ist self
, was die Bluetooth-Nutzung in gleichherkunftsverschachtelten Frames ermöglicht, jedoch standardmäßig den Zugriff von Drittinhalten verhindert.
Der ursprungsübergreifende Zugriff wird durch die Angabe der erlaubten Ursprünge sowohl im Permissions-Policy: bluetooth
-HTTP-Header als auch im gewünschten <iframe>
ermöglicht.
Um die Funktion nutzen zu können, muss der Benutzer zuerst ausdrücklich die Erlaubnis erteilen (er wird nicht um Zugriff gebeten, wenn dies aus anderen Gründen nicht erlaubt ist, z.B. wenn es durch eine Permissions Policy blockiert wird).
Die Berechtigungsaufforderung wird angezeigt, wenn Bluetooth.requestDevice()
aufgerufen wird, um den Zugriff auf ein neues Bluetooth-Gerät zu beantragen, für das keine Berechtigung erteilt wurde (das besitzende globale Objekt muss ebenfalls eine transiente Aktivierung haben).
Sie können Bluetooth.getDevices()
verwenden, um alle Geräte abzurufen, für die der Website zuvor die Berechtigung erteilt wurde.
Die Methode navigator.permissions.query()
der Permissions API kann mit der bluetooth
-Berechtigung verwendet werden, um zu testen, ob eine Website Berechtigung hat, Bluetooth-Geräte zu verwenden.
Der Berechtigungsstatus ist granted
, denied
oder prompt
(erfordert die Bestätigung einer Aufforderung durch den Benutzer):
const btPermission = await navigator.permissions.query({ name: "bluetooth" });
if (btPermission.state !== "denied") {
// Do something
}
Spezifikationen
Specification |
---|
Web Bluetooth # bluetooth |